home *** CD-ROM | disk | FTP | other *** search
- unit UMem1;
-
- interface
-
- uses
- Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
- Buttons,E_MemMap;
-
- type
- TForm1 = class(TForm)
- SpeedButton1: TSpeedButton;
- SpeedButton2: TSpeedButton;
- procedure SpeedButton1Click(Sender: TObject);
- procedure FormCreate(Sender: TObject);
- procedure FormDestroy(Sender: TObject);
- procedure SpeedButton2Click(Sender: TObject);
- private
- { Private declarations }
- EMemMap : TEMemMap;
- public
- { Public declarations }
- end;
-
- var
- Form1: TForm1;
-
- implementation
- {$R *.DFM}
- Type
- IntPtr = ^Integer;
-
- procedure TForm1.FormCreate(Sender: TObject);
- Var
- AnInt : Integer;
- begin
- EMemMap:=TEMemMap.Create(Self);
- If NOT EMemMap.MapExisting('DAVESMAP',SizeOf(Integer)) then
- begin
- AnInt:=3;
- If NOT EMemMap.CreateMemMap('DAVESMAP',SizeOf(Integer),AnInt) then
- Messagedlg('Error Creating map',mtInformation,[mbOk],0);
- end;
- end;
- procedure TForm1.FormDestroy(Sender: TObject);
- begin
- EMemMap.Free;
- end;
- procedure TForm1.SpeedButton1Click(Sender: TObject);
- Var
- AnInt : Integer;
- begin
- AnInt:=IntPtr(EMemMap.MemMap)^;
- MessageDlg(IntToStr(AnInt),mtInformation,[mbOk],0);
- end;
-
- procedure TForm1.SpeedButton2Click(Sender: TObject);
- Var
- AValue : String;
- AnInt : Integer;
- begin
- AnInt:=IntPtr(EMemMap.MemMap)^;
- AValue:=IntToStr(AnInt);
- InputQuery('Get Value','NewValue',AValue);
- AnInt:=StrToInt(AValue);
- IntPtr(EMemMap.MemMap)^:=AnInt;
- end;
-
- end.
-